package com.wanglei.ssm.service;

import com.wanglei.ssm.domain.UserInfo;
import org.springframework.security.core.userdetails.UserDetailsService;

import java.util.List;

/**
 * 用户服务
 *
 * @author wl
 */
public interface UserService extends UserDetailsService {

    /**
     * 查询所有用户
     *
     * @return 用户信息集合
     */
    List<UserInfo> findAll() throws Exception;

    /**
     * 根据id查询用户信息
     *
     * @param id 用户id
     * @return 用户信息
     * @throws Exception e
     */
    UserInfo findById(String id) throws Exception;

    /**
     * 保存用户
     *
     * @param user 用户信息
     * @throws Exception e
     */
    void save(UserInfo user) throws Exception;

    /**
     * 给指定用户添加角色
     *
     * @param userId 用户id
     * @param ids    角色id集合
     * @throws Exception e
     */
    void addRoleToUser(String userId, String[] ids) throws Exception;
}
